www.gusucode.com > VC++ 社区视频监控系统源代码-源码程序 > VC++ 社区视频监控系统源代码-源码程序/code/源程序/StageButton.cpp

    //Download by http://www.NewXing.com
// StageButton.cpp : implementation file
//

#include "stdafx.h"
#include "Capture.h"
#include "StageButton.h"
#include "CaptureDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CStageButton

CStageButton::CStageButton()
{
	m_Type = ctLeft;
}

CStageButton::~CStageButton()
{

}

BEGIN_MESSAGE_MAP(CStageButton, CButton)
	//{{AFX_MSG_MAP(CStageButton)
	ON_WM_LBUTTONDOWN()
	ON_WM_LBUTTONUP()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStageButton message handlers

//在鼠标按钮时根据按钮的类型标识,调用不同的方法
void CStageButton::OnLButtonDown(UINT nFlags, CPoint point) 
{
	switch(m_Type)
	{
	case ctUp:
		{
			((CCaptureDlg*)GetParent())->OnUp();
			break;
		}
	case ctDown:
		{
			((CCaptureDlg*)GetParent())->OnDown();
			break;
		}
	case ctLeft:
		{
			((CCaptureDlg*)GetParent())->OnLeft();
			break;
		}
	case ctRight:
		{
			((CCaptureDlg*)GetParent())->OnRight();
			break;
		}
	case ctInFoci:
		{
			((CCaptureDlg*)GetParent())->OnInFoci();
			break;
		}
	case ctReFoci:
		{
			((CCaptureDlg*)GetParent())->OnReFoci();
			break;
		}
	case ctInLen:
		{
			((CCaptureDlg*)GetParent())->OnInLen();
			break;
		}
	case ctReLen:
		{
			((CCaptureDlg*)GetParent())->OnReLen();
			break;
		}
	case ctInAperture:
		{
			((CCaptureDlg*)GetParent())->OnInAperture();
			break;
		}
	case ctReAperture:
		{
			((CCaptureDlg*)GetParent())->OnReAperture();
			break;
		}
	case ctInBrush:
		{
			((CCaptureDlg*)GetParent())->OnInBrush();
			break;
		}
	case ctReBrush:
		{
			((CCaptureDlg*)GetParent())->OnReBrush();
			break;		
		}
	default:
		{
			//......
			break;
		}
	}
	CButton::OnLButtonDown(nFlags, point);
}

//在释放鼠标按钮时停止对云台的控制
void CStageButton::OnLButtonUp(UINT nFlags, CPoint point) 
{
	((CCaptureDlg*)GetParent())->OnReset();
	CButton::OnLButtonUp(nFlags, point);
}